/*=================================================================*
*                       TRANSPONDER                                *
*==================================================================*/
#define   POL_BIT_MASK           0x01
#define FEC_BIT_MASK            0x1c
#define FEC_AUTO                0x00
#define FEC_12                  0x01
#define FEC_23                  0x02
#define FEC_34                  0x03
#define FEC_56                  0x04
#define FEC_78                  0x05

#define MAX_NETWORK_NAME_LEN    15
#define MAX_NET_PER_TP          4  /*Bean 050822*/
#define MAX_NO_OF_TRANSPONDERS  4000
typedef   struct _transponder_info_table
{
   unsigned short int usStartCode; /*0xAAAA*/
   unsigned short int usNetworkLen;/*Bit0-3: Network1 length,
                             Bit4-7: Network2 length,
                             Bit8-11: Network3 length,
                             Bit12-15:Network4 length,
                            */
   union{
      unsigned int  uiTPFreq;
      struct{
         unsigned short int uiTPFreq;   /* transponder freq in MHz,modified when unsigned short int it will overflow*/
         unsigned short int uiSymRate;  /* symbol rate in KHZ*/
      }stdvbs2;
   }stTpInfo;
   union
   {
      struct
      {
         unsigned int uiBW: 2;
                              /* B/W;
                                 00---6M
                                 01---7M
                                 10---8M*/
               unsigned int uiMode: 2;
                                  /******
                               00---2k
                               01---8k
                               11-Auto
                              ********/
               unsigned int uiGuard: 3;
                                 /*******
                                 00----1/32
                              01----1/16
                              10----1/8
                                 11----1/4
                              100---Auto
                              *********/

               unsigned int iMUX:8;
               unsigned int uiTPSlot:12; /*Acture TP Slot*/
               unsigned int uiNetNameNo:5;
      }stIsdt;
      struct
      {
         unsigned int uiPol: 2;
                            /******
                         00-HOR
                         01-Ver
                         10-Left
                         11-Right
                        ********/
         unsigned int uiFastScanNum:2;
         unsigned int uiFEC: 3;
                           /*******
                           000--- Auto
                        001 --- 1/2
                        010 --- 2/3
                        011 --- 3/4
                        100 --- 4/5
                        101 --- 5/6
                        110 --- 7/8
                        *********/
      //   unsigned int uiIQ: 1;
                           /**********
                        00----normal
                        01----Inverted
                        ***********/
         unsigned int uiSatNo: 8;  /*Point to sat*/
         unsigned int uiTPSlot:12; /*Acture TP Slot*/
         unsigned int uiNetNameNo:5;
      }stdvbs2;
   }stFlag;
   char acNetName[MAX_NET_PER_TP][ MAX_NETWORK_NAME_LEN+1 ]; /*Bean 050822*/
}TRANSPONDER_INFO_STRUCT;  /*sizeof(TRANSPONDER_INFO_STRUCT)=76*/
